From 270cc6e0b529a91c62eb9ef24ebd2c5ca42d3e98 Mon Sep 17 00:00:00 2001 From: robertl Date: Sun, 14 Mar 2004 23:32:27 +0000 Subject: [PATCH] Allow floating point values for time in GGA. --- nmea.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/nmea.c b/nmea.c index 6bab42a96..2fc81221e 100644 --- a/nmea.c +++ b/nmea.c @@ -168,7 +168,7 @@ gpgga_parse(char *ibuf) { double latdeg, lngdeg; char lngdir, latdir; - int hms; + double hms; int fix; int nsats; double hdop; @@ -186,16 +186,16 @@ gpgga_parse(char *ibuf) memset(&tm, 0, sizeof(tm)); - sscanf(ibuf,"$GPGGA,%d,%lf,%c,%lf,%c,%d,%d,%lf,%lf,%c", + sscanf(ibuf,"$GPGGA,%f,%lf,%c,%lf,%c,%d,%d,%lf,%lf,%c", &hms, &latdeg,&latdir, &lngdeg,&lngdir, &fix,&nsats,&hdop,&alt,&altunits); - tm.tm_sec = hms % 100; + tm.tm_sec = (long) hms % 100; hms = hms / 100; - tm.tm_min = hms % 100; + tm.tm_min = (long) hms % 100; hms = hms / 100; - tm.tm_hour = hms % 100; + tm.tm_hour = (long) hms % 100; waypt->creation_time = mktime(&tm) + get_tz_offset() + time(NULL); @@ -281,6 +281,7 @@ nmea_wayptpr(const waypoint *wpt) } +void nmea_trackpt_pr(const waypoint *wpt) { char obuf[200]; -- 2.30.2